package com.yitao.client.dto.order;

import com.skipper.base.dto.BaseDtoWithId;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;


/**
 *
 *  @author skipper
 *  @date 2018-12-24
 *  @desc  如该dto不需要id继承 BaseDto 即可 如需id 则根据情况选择  BaseDtoWithId  或 BaseDtoWithStringId
 *  @see
 */

public class MallOrderDetailDto extends BaseDtoWithId {

    /**
     * id
     */
    @ApiModelProperty("id")
    private Long id;

    /**
     * 关联的订单id号
     */
    @ApiModelProperty("关联的订单id号")
    private Long orderId;

    /**
     * 下单的商品id号
     */
    @ApiModelProperty("下单的商品id号")
    private Long productId;

    /**
     * 下单的商品id号
     */
    @ApiModelProperty("下单的商品id号")
    private Long productSkuId;

    /**
     * 商品售价
     */
    @ApiModelProperty("商品售价")
    private Long productSalesPrice;

    /**
     * 商品图片地址
     */
    @ApiModelProperty("商品图片地址")
    private String productImgUrl;

    /**
     * 基础分类
     */
    @ApiModelProperty("基础分类")
    private Long categoryId;

    /**
     * 运营分类
     */
    @ApiModelProperty("运营分类")
    private Long operatingCategoryId;

    /**
     * 下单的数量
     */
    @ApiModelProperty("下单的数量")
    private Integer quantity;

    /**
     * 下单的原始数量
     */
    @ApiModelProperty("下单的原始数量")
    private Integer consignQuantity;

    /**
     * 店铺id
     */
    @ApiModelProperty("店铺id")
    private Long shopId;

    /**
     * 店铺id
     */
    @ApiModelProperty("店铺id")
    private String shopName;

    /**
     * 平摊价
     */
    @ApiModelProperty("平摊价")
    private Long sharePrice;

    /**
     * 基础价
     */
    @ApiModelProperty("基础价")
    private Long basePrice;

    /**
     * 原始价格
     */
    @ApiModelProperty("原始价格")
    private Long originalPrice;

    /**
     * 优惠金额(促销活动)
     */
    @ApiModelProperty("优惠金额(促销活动)")
    private Long favorableFee1;

    /**
     * 优惠金额(优惠券，微商推广折扣)
     */
    @ApiModelProperty("优惠金额(优惠券，微商推广折扣)")
    private Long favorableFee2;

    /**
     * 优惠金额(其他)
     */
    @ApiModelProperty("优惠金额(其他)")
    private Long favorableFee3;

    /**
     * 赠品金额
     */
    @ApiModelProperty("赠品金额")
    private Long largessAmount;

    /**
     * 是否是赠品 0 否 1 是
     */
    @ApiModelProperty("是否是赠品 0 否 1 是")
    private Boolean isPresent;

    /**
     * 是否被删除 0 否 1 是
     */
    @ApiModelProperty("是否被删除 0 否 1 是")
    private Boolean isDelete;

    /**
     * 创建人
     */
    @ApiModelProperty("创建人")
    private Long createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createTime;

    /**
     * 最后更新人
     */
    @ApiModelProperty("最后更新人")
    private Long lastUpdateBy;

    /**
     * 最后修改时间
     */
    @ApiModelProperty("最后修改时间")
    private Date lastUpdateTime;

    /**
     * 物流状态 10:备货中 20:待发货 30:已发货 40:已签收 50:部分发货
     */
    @ApiModelProperty("物流状态 10:备货中 20:待发货 30:已发货 40:已签收 50:部分发货")
    private Integer logisticStatus;

    /**
     * 退款状态 -10:申请退款中 -20:退款中 -30:已退款 -40:退款失败 -50部分退款
     */
    @ApiModelProperty("0:正常订单 -10:申请退款中 -20:退款中 -25:部分退款中 -30:已退款 -35:部分已退款 -40:退款失败")
    private Integer refundStatus;

    /**
     * 是否缺货 0:否 1:是
     */
    @ApiModelProperty("是否缺货 false:否 true:是")
    private Boolean isOutStock;

    public Integer getLogisticStatus() {
        return logisticStatus;
    }

    public void setLogisticStatus(Integer logisticStatus) {
        this.logisticStatus = logisticStatus;
    }

    public Integer getRefundStatus() {
        return refundStatus;
    }

    public void setRefundStatus(Integer refundStatus) {
        this.refundStatus = refundStatus;
    }

    public Boolean getIsOutStock() {
        return isOutStock;
    }

    public void setIsOutStock(Boolean isOutStock) {
        this.isOutStock = isOutStock;
    }

    @Override
    public Long getId() {
        return id;
    }

    @Override
    public void setId(Long id) {
        this.id = id;
    }

    public Long getOrderId() {
        return orderId;
    }

    public void setOrderId(Long orderId) {
        this.orderId = orderId;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public Long getProductSkuId() {
        return productSkuId;
    }

    public void setProductSkuId(Long productSkuId) {
        this.productSkuId = productSkuId;
    }

    public Long getProductSalesPrice() {
        return productSalesPrice;
    }

    public void setProductSalesPrice(Long productSalesPrice) {
        this.productSalesPrice = productSalesPrice;
    }

    public String getProductImgUrl() {
        return productImgUrl;
    }

    public void setProductImgUrl(String productImgUrl) {
        this.productImgUrl = productImgUrl;
    }

    public Long getCategoryId() {
        return categoryId;
    }

    public void setCategoryId(Long categoryId) {
        this.categoryId = categoryId;
    }

    public Long getOperatingCategoryId() {
        return operatingCategoryId;
    }

    public void setOperatingCategoryId(Long operatingCategoryId) {
        this.operatingCategoryId = operatingCategoryId;
    }

    public Integer getQuantity() {
        return quantity;
    }

    public void setQuantity(Integer quantity) {
        this.quantity = quantity;
    }

    public Integer getConsignQuantity() {
        return consignQuantity;
    }

    public void setConsignQuantity(Integer consignQuantity) {
        this.consignQuantity = consignQuantity;
    }

    public Long getShopId() {
        return shopId;
    }

    public void setShopId(Long shopId) {
        this.shopId = shopId;
    }

    public String getShopName() {
        return shopName;
    }

    public void setShopName(String shopName) {
        this.shopName = shopName;
    }

    public Long getSharePrice() {
        return sharePrice;
    }

    public void setSharePrice(Long sharePrice) {
        this.sharePrice = sharePrice;
    }

    public Long getBasePrice() {
        return basePrice;
    }

    public void setBasePrice(Long basePrice) {
        this.basePrice = basePrice;
    }

    public Long getOriginalPrice() {
        return originalPrice;
    }

    public void setOriginalPrice(Long originalPrice) {
        this.originalPrice = originalPrice;
    }

    public Long getFavorableFee1() {
        return favorableFee1;
    }

    public void setFavorableFee1(Long favorableFee1) {
        this.favorableFee1 = favorableFee1;
    }

    public Long getFavorableFee2() {
        return favorableFee2;
    }

    public void setFavorableFee2(Long favorableFee2) {
        this.favorableFee2 = favorableFee2;
    }

    public Long getFavorableFee3() {
        return favorableFee3;
    }

    public void setFavorableFee3(Long favorableFee3) {
        this.favorableFee3 = favorableFee3;
    }

    public Long getLargessAmount() {
        return largessAmount;
    }

    public void setLargessAmount(Long largessAmount) {
        this.largessAmount = largessAmount;
    }

    public Boolean getPresent() {
        return isPresent;
    }

    public void setPresent(Boolean present) {
        isPresent = present;
    }

    public Boolean getDelete() {
        return isDelete;
    }

    public void setDelete(Boolean delete) {
        isDelete = delete;
    }

    public Long getCreateBy() {
        return createBy;
    }

    public void setCreateBy(Long createBy) {
        this.createBy = createBy;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Long getLastUpdateBy() {
        return lastUpdateBy;
    }

    public void setLastUpdateBy(Long lastUpdateBy) {
        this.lastUpdateBy = lastUpdateBy;
    }

    public Date getLastUpdateTime() {
        return lastUpdateTime;
    }

    public void setLastUpdateTime(Date lastUpdateTime) {
        this.lastUpdateTime = lastUpdateTime;
    }
}